package com.dkd.sbtz.domain;

import com.dkd.common.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

@Data
public class AssetMtplanSpare {

    /** 计划ID（关联 asset_mtplan.id） */
    @Excel(name = "计划ID")
    private Long planId;

    /** 备件ID（关联 asset_spare.id） */
    @Excel(name = "备件ID")
    private Long spareId;

    @Excel(name = "设备ID")
    private Long assetId;

    /** 数量 */
    @Excel(name = "数量")
    private Integer qty;

    private Integer orderDate;

    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date    planDate;

    /** 备注 */
    @Excel(name = "备注")
    private String remark;

    /** 创建人 */
    @Excel(name = "创建人")
    private String createBy;

    @Excel(name = "更新人")
    private String updateBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /* ====== 展示用的扩展字段（非表字段） ====== */
    /** 备件名称（联表 b.name） */
    private transient String spareName;
    /** 备件编码（如有） */
    private transient String spareCode;

    private transient String assetName;

    private transient Integer spareOrderDate;

    private transient Integer spareType;


    /** 整个备件对象 —— 你现在 service 里要 set 的就是它 */
    private Spare spare;

    /** 常用展示字段（可选，前端直接用更方便） */
    private String  unit;
    private Long stockTotal;
    private Long stockAvailable;
    private Integer spareStatus;
    private String  spareRemark;

    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date    sparePlanDate;
}
